@@ -4,6 +4,7 @@ from __future__ import division  | 
            ||
| 4 | 4 | 
                 | 
            
| 5 | 5 | 
                import json  | 
            
| 6 | 6 | 
                 | 
            
| 7 | 
                +from django.conf import settings  | 
            |
| 7 | 8 | 
                from django.db import transaction  | 
            
| 8 | 9 | 
                from django.db.models import Q  | 
            
| 9 | 10 | 
                from django_logit import logit  | 
            
                @@ -14,10 +15,12 @@ from TimeConvert import TimeConvert as tc  | 
            ||
| 14 | 15 | 
                from api.tenancy_views import tenancy_tracking_info_subscribe  | 
            
| 15 | 16 | 
                from kodo.decorators import check_admin  | 
            
| 16 | 17 | 
                from pre.custom_message import sendtemplatemessage  | 
            
| 18 | 
                +from account.models import UserInfo  | 
            |
| 17 | 19 | 
                from tenancy.models import TenancyShotInfo, TenancyShotRequestInfo  | 
            
| 18 | 20 | 
                from utils.error.errno_utils import TenancyStatusCode  | 
            
| 19 | 21 | 
                from utils.kuaidi.synquery import KuaiDi100  | 
            
| 20 | 22 | 
                 | 
            
| 23 | 
                +WECHAT = settings.WECHAT  | 
            |
| 21 | 24 | 
                 | 
            
| 22 | 25 | 
                @logit  | 
            
| 23 | 26 | 
                @check_admin  | 
            
                @@ -183,6 +186,7 @@ def shot_request_update(request, administrator):  | 
            ||
| 183 | 186 | 
                     back_express_name = request.POST.get('back_express_name', '')
               | 
            
| 184 | 187 | 
                     back_express_com = request.POST.get('back_express_com', '')
               | 
            
| 185 | 188 | 
                     back_tracking_number = request.POST.get('back_tracking_number', '')
               | 
            
| 189 | 
                +    remark = request.POST.get('remark', '')
               | 
            |
| 186 | 190 | 
                 | 
            
| 187 | 191 | 
                try:  | 
            
| 188 | 192 | 
                req = TenancyShotRequestInfo.objects.select_for_update().get(request_id=req_id, status=True)  | 
            
                @@ -223,6 +227,8 @@ def shot_request_update(request, administrator):  | 
            ||
| 223 | 227 | 
                req.back_express_com = back_express_com  | 
            
| 224 | 228 | 
                if back_tracking_number:  | 
            
| 225 | 229 | 
                req.back_tracking_number = back_tracking_number  | 
            
| 230 | 
                + if remark:  | 
            |
| 231 | 
                + req.remark = remark  | 
            |
| 226 | 232 | 
                req.save()  | 
            
| 227 | 233 | 
                 | 
            
| 228 | 234 | 
                if tracking_number and tracking_number != old_tracking_number:  | 
            
                @@ -309,6 +315,11 @@ def shot_request_send(request, administrator):  | 
            ||
| 309 | 315 | 
                shot.tenancy_status = 1  | 
            
| 310 | 316 | 
                shot.save()  | 
            
| 311 | 317 | 
                 | 
            
| 318 | 
                + try:  | 
            |
| 319 | 
                + user = UserInfo.objects.get(user_id=req.user_id)  | 
            |
| 320 | 
                + except UserInfo.DoesNotExist:  | 
            |
| 321 | 
                + return response()  | 
            |
| 322 | 
                +  | 
            |
| 312 | 323 | 
                if tracking_number and tracking_number != old_tracking_number:  | 
            
| 313 | 324 | 
                tenancy_tracking_info_subscribe(req, 'tracking')  | 
            
| 314 | 325 | 
                         data = {
               | 
            
                @@ -321,15 +332,15 @@ def shot_request_send(request, administrator):  | 
            ||
| 321 | 332 | 
                "color": "#173177"  | 
            
| 322 | 333 | 
                },  | 
            
| 323 | 334 | 
                             "keyword2": {
               | 
            
| 324 | 
                - "value": shot.model_name,  | 
            |
| 335 | 
                + "value": shot.data['model_info']['model_full_name'],  | 
            |
| 325 | 336 | 
                "color": "#173177"  | 
            
| 326 | 337 | 
                },  | 
            
| 327 | 
                -             "keyword2": {
               | 
            |
| 338 | 
                +             "keyword3": {
               | 
            |
| 328 | 339 | 
                "value": shot.sn,  | 
            
| 329 | 340 | 
                "color": "#173177"  | 
            
| 330 | 341 | 
                },  | 
            
| 331 | 342 | 
                             "remark": {
               | 
            
| 332 | 
                - "value": u'感谢您的申请',  | 
            |
| 343 | 
                + "value": req.remark if req.remark else u'感谢您的申请',  | 
            |
| 333 | 344 | 
                "color": "#173177"  | 
            
| 334 | 345 | 
                }  | 
            
| 335 | 346 | 
                }  | 
            
                @@ -0,0 +1,19 @@  | 
            ||
| 1 | 
                +# -*- coding: utf-8 -*-  | 
            |
| 2 | 
                +# Generated by Django 3.2.16 on 2022-12-06 08:24  | 
            |
| 3 | 
                +  | 
            |
| 4 | 
                +from django.db import migrations, models  | 
            |
| 5 | 
                +  | 
            |
| 6 | 
                +  | 
            |
| 7 | 
                +class Migration(migrations.Migration):  | 
            |
| 8 | 
                +  | 
            |
| 9 | 
                + dependencies = [  | 
            |
| 10 | 
                +        ('tenancy', '0005_tenancyshotinfo_admin_id'),
               | 
            |
| 11 | 
                + ]  | 
            |
| 12 | 
                +  | 
            |
| 13 | 
                + operations = [  | 
            |
| 14 | 
                + migrations.AddField(  | 
            |
| 15 | 
                + model_name='tenancyshotrequestinfo',  | 
            |
| 16 | 
                + name='remark',  | 
            |
| 17 | 
                + field=models.CharField(default='', help_text='备注', max_length=256, verbose_name='remark'),  | 
            |
| 18 | 
                + ),  | 
            |
| 19 | 
                + ]  | 
            
                @@ -125,6 +125,8 @@ class TenancyShotRequestInfo(BaseModelMixin):  | 
            ||
| 125 | 125 | 
                request_status = models.CharField(_(u'request_status'), max_length=16, default='', help_text=u'租借申请状态')  | 
            
| 126 | 126 | 
                     request_status_at = JSONField(_(u'request_status_at'), blank=True, null=True, default={}, help_text=u'租借申请状态变更时间')
               | 
            
| 127 | 127 | 
                 | 
            
| 128 | 
                + remark = models.CharField(_(u'remark'), max_length=256, default='', help_text=u'备注')  | 
            |
| 129 | 
                +  | 
            |
| 128 | 130 | 
                class Meta:  | 
            
| 129 | 131 | 
                verbose_name = _(u'租赁镜头申请信息')  | 
            
| 130 | 132 | 
                verbose_name_plural = _(u'租赁镜头申请信息')  | 
            
                @@ -182,6 +184,7 @@ class TenancyShotRequestInfo(BaseModelMixin):  | 
            ||
| 182 | 184 | 
                'request_status': self.request_status,  | 
            
| 183 | 185 | 
                             'request_status_at': {k: tc.local_date_string(utc_dt=tc.string_to_utc_datetime(v, format='%Y-%m-%dT%H:%M:%S.%fZ')) for k, v in self.request_status_at.items()},
               | 
            
| 184 | 186 | 
                'created_at': tc.local_date_string(utc_dt=self.created_at),  | 
            
| 187 | 
                + 'remark': self.remark,  | 
            |
| 185 | 188 | 
                }  | 
            
| 186 | 189 | 
                 | 
            
| 187 | 190 | 
                @property  | 
            
                @@ -236,4 +239,5 @@ class TenancyShotRequestInfo(BaseModelMixin):  | 
            ||
| 236 | 239 | 
                'lens_hood_status': self.lens_hood_status,  | 
            
| 237 | 240 | 
                'tripod_ring_status': self.tripod_ring_status,  | 
            
| 238 | 241 | 
                'appearance_performance_status': self.appearance_performance_status,  | 
            
| 242 | 
                + 'remark': self.remark,  | 
            |
| 239 | 243 | 
                }  |